package DeleteMoviePage;

import java.util.regex.Pattern;
import java.util.concurrent.TimeUnit;
import org.testng.*;
import org.testng.annotations.*;

import static org.junit.Assert.*;
import static org.hamcrest.CoreMatchers.*;
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.support.ui.Select;

public class DeleteMovie extends javatitov.pages.TestBase {
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer();
private RemoteWebDriver movie_box;
  
  
  @Test
  public void isDeleteMovie() throws Exception {
	  
		//идем на домашню юстарницу и запонимаем и выводим в логах id первого фильма
	  
	  		driver.get(baseUrl + "/php4dvd/");
		    driver.findElement(By.id("q")).click();
		    driver.findElement(By.id("q")).sendKeys(Keys.CONTROL + "a");
		    Thread.sleep(200);
		    driver.findElement(By.id("q")).sendKeys(Keys.DELETE);
		    driver.findElement(By.id("q")).sendKeys(Keys.RETURN);
		    WebElement element = driver.findElement(By.xpath("//div[@class='movie_box']"));
		    String old_id = element.getAttribute("id");
		    System.out.println(old_id);
		    
			   //переходим в фильм и удаляем
		    
		    driver.findElement(By.cssSelector("div.title")).click();
		     driver.findElement(By.cssSelector("img[alt=\"Remove\"]")).click();
		    assertTrue(closeAlertAndGetItsText().matches("^Are you sure you want to remove this[\\s\\S]$"));
		    
             //нужна проверка, что фильм удален. 
		    //идем на домашнюю страницу и сравниваем id, который запомнили с первым по списку id.
		   		    
  			driver.findElement(By.linkText("Home")).click();
  			driver.findElement(By.id("q")).click();
		    driver.findElement(By.id("q")).sendKeys(Keys.CONTROL + "a");
		    Thread.sleep(200);
		    driver.findElement(By.id("q")).sendKeys(Keys.DELETE);
		    driver.findElement(By.id("q")).sendKeys(Keys.RETURN);
		    WebElement element1 = driver.findElement(By.xpath("//div[@class='movie_box']"));
		    String new_id = element1.getAttribute("id");
		    System.out.println(new_id);
		    
		    //сравниваем полученные id. Если не совпали, значит фильм удален.
		    
		    System.out.println(old_id.equals(new_id) ? "id совпали, значит фильм не удалился" : "id не совпали, значит фильм удалился");
		    
		   
		    		    
  }

  
 
  private String closeAlertAndGetItsText() {
    try {
      Alert alert = driver.switchTo().alert();
      String alertText = alert.getText();
      if (acceptNextAlert) {
        alert.accept();
      } else {
        alert.dismiss();
      }
      return alertText;
    } finally {
      acceptNextAlert = true;
    }
  }

boolean isElementPresent(By by) {
    try {
        driver.findElement(by);
        return true;
    } catch (NoSuchElementException e) {
        return false;
    }
}
}